package deng.hibernate.examples.employees;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;


/**
 * The persistent class for the employees database table.
 * 
 */
@Entity
@Table(name="employees")
public class Employee implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	//@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="emp_no")
	private int empNo;

    @Temporal( TemporalType.DATE)
	@Column(name="birth_date")
	private Date birthDate;

	@Column(name="first_name")
	private String firstName;

	private String gender;

    @Temporal( TemporalType.DATE)
	@Column(name="hire_date")
	private Date hireDate;

	@Column(name="last_name")
	private String lastName;

//	//bi-directional many-to-one association to DeptEmp
//	@OneToMany(mappedBy="employee")
//	private Set<DeptEmp> deptEmps;
//
//	//bi-directional many-to-one association to DeptManager
//	@OneToMany(mappedBy="employee")
//	private Set<DeptManager> deptManagers;
//
//	//bi-directional many-to-one association to Salary
//	@OneToMany(mappedBy="employee")
//	private Set<Salary> salaries;
//
//	//bi-directional many-to-one association to Title
//	@OneToMany(mappedBy="employee")
//	private Set<Title> titles;

    public Employee() {
    }

	public int getEmpNo() {
		return this.empNo;
	}

	public void setEmpNo(int empNo) {
		this.empNo = empNo;
	}

	public Date getBirthDate() {
		return this.birthDate;
	}

	public void setBirthDate(Date birthDate) {
		this.birthDate = birthDate;
	}

	public String getFirstName() {
		return this.firstName;
	}

	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}

	public String getGender() {
		return this.gender;
	}

	public void setGender(String gender) {
		this.gender = gender;
	}

	public Date getHireDate() {
		return this.hireDate;
	}

	public void setHireDate(Date hireDate) {
		this.hireDate = hireDate;
	}

	public String getLastName() {
		return this.lastName;
	}

	public void setLastName(String lastName) {
		this.lastName = lastName;
	}

//	public Set<DeptEmp> getDeptEmps() {
//		return this.deptEmps;
//	}
//
//	public void setDeptEmps(Set<DeptEmp> deptEmps) {
//		this.deptEmps = deptEmps;
//	}
//	
//	public Set<DeptManager> getDeptManagers() {
//		return this.deptManagers;
//	}
//
//	public void setDeptManagers(Set<DeptManager> deptManagers) {
//		this.deptManagers = deptManagers;
//	}
//	
//	public Set<Salary> getSalaries() {
//		return this.salaries;
//	}
//
//	public void setSalaries(Set<Salary> salaries) {
//		this.salaries = salaries;
//	}
//	
//	public Set<Title> getTitles() {
//		return this.titles;
//	}
//
//	public void setTitles(Set<Title> titles) {
//		this.titles = titles;
//	}
	
}